<!DOCTYPE html>
<html class="client-nojs vector-feature-night-mode-disabled vector-feature-language-in-header-enabled vector-feature-language-in-main-page-header-disabled vector-feature-page-tools-pinned-disabled vector-feature-toc-pinned-clientpref-1 vector-feature-main-menu-pinned-disabled vector-feature-limited-width-clientpref-1 vector-feature-limited-width-content-enabled vector-feature-custom-font-size-clientpref-1 vector-feature-appearance-pinned-clientpref-1 vector-sticky-header-enabled" lang="en" dir="ltr"><head>
<meta charset="UTF-8">
<title>Preboot Execution Environment</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="canonical" href="https://en.wikipedia.org/wiki/Preboot_Execution_Environment"> <link href="./mw/ext.cite.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.icons.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.search.codex.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/skins.vector.styles.css" rel="stylesheet" type="text/css">
<link href="./mw/user.styles.css" rel="stylesheet" type="text/css">
<meta name="ResourceLoaderDynamicStyles" content="">
<link rel="stylesheet" type="text/css" href="./mw/site.styles.css">
<link rel="stylesheet" type="text/css" href="./mw/noscript.css">
<link rel="stylesheet" type="text/css" href="./footer.css">
<link rel="stylesheet" type="text/css" href="./vector-2022.css">
</head>
<body class="skin--responsive skin-vector skin-vector-search-vue mediawiki ltr sitedir-ltr mw-hide-empty-elt ns-0 ns-subject page-Preboot_Execution_Environment rootpage-Preboot_Execution_Environment skin-vector-2022 action-view">
<div class="mw-page-container">
<div class="mw-page-container-inner">
<div class="mw-content-container">
<main id="content" class="mw-body">
<header class="mw-body-header vector-page-titlebar">
<h1 id="firstHeading" class="firstHeading mw-first-heading">
<span id="openzim-page-title" class="mw-page-title-main"><span class="mw-page-title-main">Preboot Execution Environment</span></span>
</h1>
</header>
<a id="top"></a>
<div id="bodyContent" class="vector-body ve-init-mw-desktopArticleTarget-targetContainer" aria-labelledby="firstHeading" data-mw-ve-target-container="">
<div id="mw-content-text" class="mw-body-content mw-content-ltr" lang="en" dir="ltr"><div class="mw-content-ltr mw-parser-output" lang="en" dir="ltr">
<style data-mw-deduplicate="TemplateStyles:r1236090951">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hatnote{font-style:italic}.mw-parser-output div.hatnote{padding-left:1.6em;margin-bottom:0.5em}.mw-parser-output .hatnote i{font-style:normal}.mw-parser-output .hatnote+link+.hatnote{margin-top:-0.5em}@media print{body.ns-0 .mw-parser-output .hatnote{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div role="note" class="hatnote navigation-not-searchable">For the TV series episode, see <a href="Preboot" class="mw-redirect" title="Preboot">Preboot</a>.</div>
<style data-mw-deduplicate="TemplateStyles:r1305433154">
/* start https://en.wikipedia.org/ */
.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}@media print{body.ns-0 .mw-parser-output .ambox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style>
<p>In computing, the <b>Preboot eXecution Environment</b> (<b>PXE</b>; often pronounced as <span class="rt-commentedText nowrap"><span class="IPA nopopups noexcerpt" lang="en-fonipa">/<span style="border-bottom:1px dotted"><span title="/ˈ/: primary stress follows">ˈ</span><span title="'p' in 'pie'">p</span><span title="/ɪ/: 'i' in 'kit'">ɪ</span><span title="'k' in 'kind'">k</span><span title="'s' in 'sigh'">s</span><span title="/iː/: 'ee' in 'fleece'">iː</span></span>/</span></span> <i>pixie</i>), often called <b>PXE boot</b> (<i>pixie boot</i>), is a specification describing a standardized <a href="Client%E2%80%93server_model" title="Client–server model">client–server</a> environment that <a href="Booting" title="Booting">boots</a> a software assembly, retrieved from a network, on PXE-enabled clients. On the client side it requires only a PXE-capable <a href="Network_interface_controller" title="Network interface controller">network interface controller</a> (NIC), and uses a small set of industry-standard network protocols such as <a href="Dynamic_Host_Configuration_Protocol" title="Dynamic Host Configuration Protocol">Dynamic Host Configuration Protocol</a> (DHCP) and <a href="Trivial_File_Transfer_Protocol" title="Trivial File Transfer Protocol">Trivial File Transfer Protocol</a> (TFTP).
</p><p>The concept behind the PXE originated in the early days of protocols like <a href="BOOTP" class="mw-redirect" title="BOOTP">BOOTP</a>/DHCP/TFTP, and as of 2015 it forms part of the <a href="UEFI" title="UEFI">Unified Extensible Firmware Interface</a> (UEFI) standard. In modern data centers, PXE is the most frequent choice<sup id="cite_ref-pxespread_1-0" class="reference"><a href="#cite_note-pxespread-1"><span class="cite-bracket">[</span>1<span class="cite-bracket">]</span></a></sup> for operating system booting, installation and deployment.
</p>
<meta property="mw:PageProp/toc">
<div class="mw-heading mw-heading2"><h2 id="Overview">Overview</h2></div>
<p>Since the beginning of computer networks, there has been a persistent need for <a href="Client_(Computing)" class="mw-redirect" title="Client (Computing)">client</a> systems which can <a href="Bootstrapping#Computing" title="Bootstrapping">boot</a> appropriate software images, with appropriate configuration parameters, both retrieved at boot time from one or more network <a href="Server_(computing)" title="Server (computing)">servers</a>. This goal requires a client to use a set of pre-boot services, based on industry standard <a href="Network_protocol" class="mw-redirect" title="Network protocol">network protocols</a>. Additionally, the Network Bootstrap Program (NBP) which is initially downloaded and run must be built using a client <a href="Firmware" title="Firmware">firmware</a> layer (at the device to be bootstrapped via PXE) providing a hardware independent standardized way to interact with the surrounding network booting environment. In this case the availability and subjection to standards are a key factor required to guarantee the network boot process system interoperability.
</p><p>One of the first attempts in this regard was bootstrap loading using TFTP standard RFC 906, published in 1984, which established the 1981 published <a href="Trivial_File_Transfer_Protocol" title="Trivial File Transfer Protocol">Trivial File Transfer Protocol</a> (TFTP) standard RFC 783 to be used as the standard file transfer protocol for bootstrap loading. It was followed shortly after by the <a href="Bootstrap_Protocol" title="Bootstrap Protocol">Bootstrap Protocol</a> standard RFC 951 (BOOTP), published in 1985, which allowed a <a href="Diskless_node" title="Diskless node">diskless client machine</a> to discover its own IP address, the address of a TFTP server, and the name of an NBP to be loaded into memory and executed. BOOTP implementation difficulties, among other reasons, eventually led to the development of the <a href="Dynamic_Host_Configuration_Protocol" title="Dynamic Host Configuration Protocol">Dynamic Host Configuration Protocol</a> standard RFC 2131 (DHCP) published in 1997. The pioneering TFTP/BOOTP/DHCP approach fell short, as at the time, it did not define the required standardized client side of the provisioning environment.
</p><p>The Preboot Execution Environment (PXE) was introduced as part of the <a href="Wired_for_Management" title="Wired for Management">Wired for Management</a><sup id="cite_ref-wfmspec_2-0" class="reference"><a href="#cite_note-wfmspec-2"><span class="cite-bracket">[</span>2<span class="cite-bracket">]</span></a></sup> framework by <a href="Intel" title="Intel">Intel</a> and is described in the specification published by Intel and SystemSoft. PXE version 2.0 was released in December 1998, and the update 2.1 was made public in September 1999.<sup id="cite_ref-pxespec_3-0" class="reference"><a href="#cite_note-pxespec-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup> The PXE environment makes use of several standard client‑server protocols including DHCP and TFTP (now defined by the 1992 published RFC 1350). Within the PXE schema the client side of the provisioning equation is an integral part of the PXE standard and it is implemented either as a <a href="Network_Interface_Card" class="mw-redirect" title="Network Interface Card">Network Interface Card</a> (NIC) <a href="BIOS" title="BIOS">BIOS</a> extension or current devices in <a href="UEFI" title="UEFI">UEFI</a> code. This distinctive firmware layer makes available at the client the functions of a basic Universal Network Device Interface (UNDI), a minimalistic <a href="UDP/IP" class="mw-redirect" title="UDP/IP">UDP</a>/<a href="Internet_protocol_suite" title="Internet protocol suite">IP</a> stack, a Preboot (DHCP) client module and a TFTP client module, together forming the PXE <a href="API" title="API">application programming interfaces</a> (APIs) used by the NBP when needing to interact with the services offered by the server counterpart of the PXE environment. TFTP's low <a href="Throughput" class="mw-redirect" title="Throughput">throughput</a>, especially when used over high-<a href="Latency_(engineering)" title="Latency (engineering)">latency</a> links, has been initially mitigated by the TFTP Blocksize Option RFC 2348 published in May 1998, and later by the TFTP Windowsize Option RFC 7440 published in January 2015, allowing potentially larger payload deliveries and thus improving throughput.
</p>
<div class="mw-heading mw-heading2"><h2 id="Details">Details</h2></div>
<p>The PXE environment relies on a combination of industry-standard Internet protocols, namely UDP/IP, DHCP and TFTP. These protocols have been selected because they are easily implemented in the client's NIC firmware, resulting in standardized small-<a href="Memory_footprint" title="Memory footprint">footprint</a> PXE ROMs. Standardization, small size of PXE firmware images and their low use of resources are some of the primary design goals, allowing the client side of the PXE standard to be identically implemented on a wide variety of systems, ranging from powerful client computers to resource-limited <a href="Single-board_computer" title="Single-board computer">single-board computers</a> (SBC) and <a href="System-on-a-chip" class="mw-redirect" title="System-on-a-chip">system-on-a-chip</a> (SoC) computers.
</p><p>DHCP is used to provide the appropriate client network parameters and specifically the location (IP address) of the TFTP server hosting, ready for download, the initial bootstrap program (NBP) and complementary files. To initiate a PXE bootstrap session the DHCP component of the client's PXE firmware <a href="Broadcast_address" title="Broadcast address">broadcasts</a> a DHCPDISCOVER packet containing PXE-specific options to port 67/UDP (DHCP server port); it asks for the required network configuration and network booting parameters. The PXE-specific options identify the initiated DHCP transaction as a PXE transaction. Standard DHCP servers (non PXE enabled) will be able to answer with a regular DHCPOFFER carrying networking information (i.e. IP address) but not the PXE specific parameters. A PXE client will not be able to boot if it only receives an answer from a non PXE enabled DHCP server.
</p><p>After parsing a PXE enabled DHCP server DHCPOFFER, the client will be able to set its own network IP address, IP Mask, etc., and to point to the network located booting resources, based on the received TFTP Server IP address and the name of the NBP. The client next transfers the NBP into its own <a href="Random-access_memory" title="Random-access memory">random-access memory</a> (RAM) using TFTP, possibly verifies it (i.e. UEFI <a href="Unified_Extensible_Firmware_Interface" class="mw-redirect" title="Unified Extensible Firmware Interface">Secure Boot</a>), and finally boots from it. NBPs are just the first link in the boot chain process and they generally request via TFTP a small set of complementary files in order to get running a minimalistic OS executive (i.e. <a href="Windows_Preinstallation_Environment" title="Windows Preinstallation Environment">WindowsPE</a>, or a basic <a href="Linux_kernel" title="Linux kernel">Linux kernel</a>+<a href="Initrd" class="mw-redirect" title="Initrd">initrd</a>). The small OS executive loads its own network drivers and TCP/IP stack. At this point, the remaining instructions required to boot or install a full OS are provided not over TFTP, but using a robust transfer protocol (such as <a href="Hypertext_Transfer_Protocol" class="mw-redirect" title="Hypertext Transfer Protocol">HTTP</a>, <a href="CIFS" class="mw-redirect" title="CIFS">CIFS</a>, or <a href="Network_File_System" title="Network File System">NFS</a>).
</p>
<div class="mw-heading mw-heading2"><h2 id="Integration">Integration</h2></div>
<p>The PXE Client/Server environment was designed so it can be seamlessly integrated with an already in place DHCP and TFTP server infrastructure.
This design goal presented a challenge when dealing with the classic DHCP protocol. Corporate DHCP servers are usually subject to strict policies that are designed to prevent easily adding the additional parameters and rules required to support a PXE environment. For this reason the PXE standard developed the concept of DHCP redirection or "proxyDHCP". The idea behind a proxyDHCP is to split the PXE DHCP requirements in two independently run and administered server units:
</p>
<ol><li>The classic DHCP server providing IP address, IP mask, etc. <i>to all booting DHCP clients</i>.</li>
<li>The proxyDHCP server providing TFTP server IP address and name of the NBP <i>only to PXE identified booting clients</i>.</li></ol>
<p>In a DHCP plus proxyDHCP server environment<sup id="cite_ref-pxespec_3-1" class="reference"><a href="#cite_note-pxespec-3"><span class="cite-bracket">[</span>3<span class="cite-bracket">]</span></a></sup><sup class="reference nowrap"><span title="Page / location: 18">: 18 </span></sup> the PXE client initially broadcasts a single PXE DHCPDISCOVER packet and receives two complementary DHCPOFFERs; one from the regular non PXE enabled DHCP server and a second one from the proxyDHCP server. Both answers together provide the required information to allow the PXE client to continue with its booting process. This non-intrusive approach allows setting a PXE environment without touching the configuration of an already working DHCP server. The proxyDHCP service may also run on the same host as the standard DHCP service but even in this case they are both two independently run and administered applications. Since two services cannot use the same port 67/UDP on the same host, the proxyDHCP runs on port 4011/UDP. The proxyDHCP approach has proved to be extremely useful in a wide range of PXE scenarios going from corporate to home environments.
</p>
<div class="mw-heading mw-heading2"><h2 id="Availability">Availability</h2></div>
<p>PXE was conceived considering several system architectures. The version 2.1 of the specification defined architecture identifiers for six system types, including <a href="IA-64" title="IA-64">IA-64</a> and <a href="DEC_Alpha" title="DEC Alpha">DEC Alpha</a>. However, PXE v2.1 only completely covered <a href="IA-32" title="IA-32">IA-32</a>. Despite this apparent lack of completeness Intel has recently decided to widely support PXE within the new <a href="UEFI" title="UEFI">UEFI</a> specification extending the PXE functionality to all EFI/UEFI environments.
Current Unified Extensible Firmware Interface Specification 2.4A, Section 21 Network Protocols — SNP, PXE, and BIS defines the protocols that provide access to network devices
while executing in the UEFI boot services environment. These protocols include the Simple Network Protocol (SNP), the PXE Base Code Protocol (PXE), and the Boot Integrity Services Protocol (BIS).<sup id="cite_ref-2_4_Errata_A_4-0" class="reference"><a href="#cite_note-2_4_Errata_A-4"><span class="cite-bracket">[</span>4<span class="cite-bracket">]</span></a></sup><sup id="cite_ref-Intel_UEFI_PXE_Boot_Performance_Analysis_5-0" class="reference"><a href="#cite_note-Intel_UEFI_PXE_Boot_Performance_Analysis-5"><span class="cite-bracket">[</span>5<span class="cite-bracket">]</span></a></sup>
Today in a PXE environment the client architecture detection is rarely based on the identifiers originally included with the PXE v2.1 specification. Instead, each computer that will be booting from the network should have set DHCP option 93 to indicate the client's architecture. This enables a PXE server to know (at boot time) the exact architecture of the client from the first network boot packet.<sup id="cite_ref-rfc4578_6-0" class="reference"><a href="#cite_note-rfc4578-6"><span class="cite-bracket">[</span>6<span class="cite-bracket">]</span></a></sup>
</p><p>With the advent of <a href="IPv6" title="IPv6">IPv6</a>, DHCP has evolved into <a href="DHCPv6" title="DHCPv6">DHCPv6</a>; the need for options supporting PXE within the new DHCP protocol has been addressed in 2010.<sup id="cite_ref-rfc5970_7-0" class="reference"><a href="#cite_note-rfc5970-7"><span class="cite-bracket">[</span>7<span class="cite-bracket">]</span></a></sup>
</p><p>The original PXE client firmware extension was designed as an <a href="Option_ROM" title="Option ROM">Option ROM</a> for the IA-32 <a href="BIOS" title="BIOS">BIOS</a>, so a <a href="Personal_computer" title="Personal computer">personal computer</a> (PC) was originally made PXE-capable by installing a <a href="Network_interface_controller" title="Network interface controller">network interface controller</a> (NIC) that provided a PXE Option ROM. Today the client PXE code is directly included within the NIC's own firmware or as part of the UEFI firmware on the motherboard.
</p><p>Even when the original client PXE firmware has been written by Intel and always provided at no cost as a linkable IA32 <a href="Object_code_file_format" class="mw-redirect" title="Object code file format">object code format</a> module included in their Product Development Kit (PDK), the open source world has produced over the years non-standard derivative projects like <a href="GPXE" title="GPXE">gPXE</a>/<a href="IPXE" title="IPXE">iPXE</a> offering their own ROMs. While Intel based ROMs have been implementing the client side of the PXE standard for more than 20 years some users were willing to trade extra features for stability and PXE standard conformance.<sup id="cite_ref-gPXE_8-0" class="reference"><a href="#cite_note-gPXE-8"><span class="cite-bracket">[</span>8<span class="cite-bracket">]</span></a></sup>
</p>
<div class="mw-heading mw-heading2"><h2 id="Acceptance">Acceptance</h2></div>
<p>PXE acceptance since v2.1 has been ubiquitous; today it is virtually impossible to find a network card without PXE firmware on it. The availability of inexpensive <a href="Gigabit_Ethernet" title="Gigabit Ethernet">Gigabit Ethernet</a> hardware (NICs, <a href="Network_switch" title="Network switch">switches</a>, <a href="Network_router" class="mw-redirect" title="Network router">routers</a>, etc.) has made PXE the fastest method available for installing an operating system on a client when competing against the classic <a href="CD" class="mw-redirect" title="CD">CD</a>, <a href="DVD" title="DVD">DVD</a>, and <a href="USB_flash_drive" title="USB flash drive">USB flash drive</a> alternatives.
</p><p>Over the years several major projects have included PXE support, including:
</p>
<ul><li>All the major Linux distributions.</li>
<li><a href="OpenVMS" title="OpenVMS">OpenVMS</a> on <a href="HPE_Integrity" class="mw-redirect" title="HPE Integrity">HPE Integrity</a> and <a href="X86-64" title="X86-64">x86-64</a> hardware.</li>
<li>Microsoft <a href="Remote_Installation_Services" title="Remote Installation Services">Remote Installation Services</a> (RIS)</li>
<li>Microsoft <a href="Windows_Deployment_Services" title="Windows Deployment Services">Windows Deployment Services</a> (WDS)</li>
<li><a href="Microsoft_Deployment_Toolkit" title="Microsoft Deployment Toolkit">Microsoft Deployment Toolkit</a> (MDT)</li>
<li>Microsoft <a href="System_Center_Configuration_Manager" class="mw-redirect" title="System Center Configuration Manager">System Center Configuration Manager</a> (SCCM)</li></ul>
<p>In regard to NBP development there are several projects implementing Boot Managers able to offer boot menu extended features, scripting capabilities, etc.:
</p>
<ul><li>Syslinux <a href="PXELINUX" class="mw-redirect" title="PXELINUX">PXELINUX</a></li>
<li><a href="GPXE" title="GPXE">gPXE</a>/<a href="IPXE" title="IPXE">iPXE</a></li></ul>
<p>All the above-mentioned projects, when they are able to boot/install more than one OS, work under a "Boot Manager - Boot Loader" paradigm. The initial NBP is a Boot Manager able to retrieve its own configuration and deploy a menu of booting options. The user selects a booting option and an OS dependent Boot Loader is downloaded and run in order to continue with the selected specific booting procedure.
</p>
<div class="mw-heading mw-heading2"><h2 id="Sibling_environments">Sibling environments</h2></div>
<p><a href="Apple_Inc." title="Apple Inc.">Apple</a> has come up with a very similar network boot approach under the umbrella of the <a href="Boot_Service_Discovery_Protocol" title="Boot Service Discovery Protocol">Boot Server Discovery Protocol</a> (BSDP) specification. BSDP v0.1 was initially published by Apple in August 1999<sup id="cite_ref-BSDP_1_9-0" class="reference"><a href="#cite_note-BSDP_1-9"><span class="cite-bracket">[</span>9<span class="cite-bracket">]</span></a></sup> and its last v1.0.8 was published in September 2010.<sup id="cite_ref-BSDP_2_10-0" class="reference"><a href="#cite_note-BSDP_2-10"><span class="cite-bracket">[</span>10<span class="cite-bracket">]</span></a></sup> <a href="Mac_OS_X_Server" title="Mac OS X Server">Mac OS X Server</a> included a system tool called <a href="NetBoot" title="NetBoot">NetBoot</a>. A NetBoot client uses BSDP to dynamically acquire resources that enable it to boot a suitable operating system. BSDP is crafted on top of DHCP using vendor-specific information to provide the additional NetBoot functionality not present in standard DHCP. The protocol is implemented in client firmware. At boot time, the client obtains an IP address via DHCP then discovers boot servers using BSDP. Each BSDP server responds with boot information consisting of:
</p>
<ul><li>A list of bootable operating system images</li>
<li>The default operating system image</li>
<li>The client's currently selected operating system image (if defined)</li></ul>
<p>The client chooses an operating system from the list and sends a message to the server indicating its selection. The selected boot server responds supplying the boot file and
boot image, and any other information needed to download and execute the selected operating system.
</p>
<div class="mw-heading mw-heading2"><h2 id="Descendant_environments">Descendant environments</h2></div>
<p><a href="Microsoft" title="Microsoft">Microsoft</a> created a non-overlapping extension of the PXE environment with their Boot Information Negotiation Layer (BINL). BINL is implemented as a server service and it is a key component of their Remote Installation Services (RIS) and Windows Deployment Services (WDS) strategies. It includes certain preparation processes and a network protocol that could be somehow considered a Microsoft-crafted DHCP extension. BINL is a Microsoft proprietary technology that uses PXE standard client firmware. Currently there is not a publicly available BINL specification.
</p>
<div class="mw-heading mw-heading2"><h2 id="See_also">See also</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1184024115">
/* start https://en.wikipedia.org/ */
.mw-parser-output .div-col{margin-top:0.3em;column-width:30em}.mw-parser-output .div-col-small{font-size:90%}.mw-parser-output .div-col-rules{column-rule:1px solid #aaa}.mw-parser-output .div-col dl,.mw-parser-output .div-col ol,.mw-parser-output .div-col ul{margin-top:0}.mw-parser-output .div-col li,.mw-parser-output .div-col dd{page-break-inside:avoid;break-inside:avoid-column}
/* end https://en.wikipedia.org/ */
</style><div class="div-col" style="column-width: 22em;">
<ul><li><a href="Diskless_node" title="Diskless node">Diskless nodes</a> – diskless computers</li>
<li><a href="Boot_Service_Discovery_Protocol" title="Boot Service Discovery Protocol">Boot Service Discovery Protocol</a> – Apple network boot protocol</li>
<li><a href="Network_booting" title="Network booting">Network booting</a></li>
<li><a href="Remote_Initial_Program_Load" title="Remote Initial Program Load">Remote Initial Program Load</a> (RIPL or RPL)</li>
<li><a href="System_Deployment_Image" title="System Deployment Image">System Deployment Image</a> (SDI) – primarily with Microsoft products</li>
<li><a href="Unified_Extensible_Firmware_Interface" class="mw-redirect" title="Unified Extensible Firmware Interface">Unified Extensible Firmware Interface</a> – UEFI network booting</li>
<li><a href="Wake-on-LAN" title="Wake-on-LAN">Wake-on-LAN</a> (WOL)</li>
<li><a href="Windows_Deployment_Services" title="Windows Deployment Services">Windows Deployment Services</a> – PXE-based deployment for Microsoft Windows</li></ul>
</div>
<div class="mw-heading mw-heading2"><h2 id="References">References</h2></div>
<style data-mw-deduplicate="TemplateStyles:r1239543626">
/* start https://en.wikipedia.org/ */
.mw-parser-output .reflist{margin-bottom:0.5em;list-style-type:decimal}@media screen{.mw-parser-output .reflist{font-size:90%}}.mw-parser-output .reflist .references{font-size:100%;margin-bottom:0;list-style-type:inherit}.mw-parser-output .reflist-columns-2{column-width:30em}.mw-parser-output .reflist-columns-3{column-width:25em}.mw-parser-output .reflist-columns{margin-top:0.3em}.mw-parser-output .reflist-columns ol{margin-top:0}.mw-parser-output .reflist-columns li{page-break-inside:avoid;break-inside:avoid-column}.mw-parser-output .reflist-upper-alpha{list-style-type:upper-alpha}.mw-parser-output .reflist-upper-roman{list-style-type:upper-roman}.mw-parser-output .reflist-lower-alpha{list-style-type:lower-alpha}.mw-parser-output .reflist-lower-greek{list-style-type:lower-greek}.mw-parser-output .reflist-lower-roman{list-style-type:lower-roman}
/* end https://en.wikipedia.org/ */
</style><div class="reflist reflist-columns references-column-width" style="column-width: 30em;">
<ol class="references">
<li id="cite_note-pxespread-1"><span class="mw-cite-backlink"><b><a href="#cite_ref-pxespread_1-0">^</a></b></span> <span class="reference-text"><style data-mw-deduplicate="TemplateStyles:r1238218222">
/* start https://en.wikipedia.org/ */
.mw-parser-output cite.citation{font-style:inherit;word-wrap:break-word}.mw-parser-output .citation q{quotes:"\"""\"""'""'"}.mw-parser-output .citation:target{background-color:rgba(0,127,255,0.133)}.mw-parser-output .id-lock-free.id-lock-free a{background:url("./mw/Lock-green.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-limited.id-lock-limited a,.mw-parser-output .id-lock-registration.id-lock-registration a{background:url("./mw/Lock-gray-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .id-lock-subscription.id-lock-subscription a{background:url("./mw/Lock-red-alt-2.svg")right 0.1em center/9px no-repeat}.mw-parser-output .cs1-ws-icon a{background:url("./mw/Wikisource-logo.svg")right 0.1em center/12px no-repeat}body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-free a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-limited a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-registration a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .id-lock-subscription a,body:not(.skin-timeless):not(.skin-minerva) .mw-parser-output .cs1-ws-icon a{background-size:contain;padding:0 1em 0 0}.mw-parser-output .cs1-code{color:inherit;background:inherit;border:none;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;color:var(--color-error,#d33)}.mw-parser-output .cs1-visible-error{color:var(--color-error,#d33)}.mw-parser-output .cs1-maint{display:none;color:#085;margin-left:0.3em}.mw-parser-output .cs1-kern-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right{padding-right:0.2em}.mw-parser-output .citation .mw-selflink{font-weight:inherit}@media screen{.mw-parser-output .cs1-format{font-size:95%}html.skin-theme-clientpref-night .mw-parser-output .cs1-maint{color:#18911f}}@media screen and (prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .cs1-maint{color:#18911f}}
/* end https://en.wikipedia.org/ */
</style><cite id="CITEREFAvramov2014" class="citation book cs1">Avramov, Lucien (December 31, 2014). <i>The Policy Driven Data Center with ACI: Architecture, Concepts, and Methodology</i>. Cisco Press. p. 43. <a href="ISBN_(identifier)" class="mw-redirect" title="ISBN (identifier)">ISBN</a> <bdi>978-1587144905</bdi>. <q>In modern data centers, administrators rarely install new software via removable media such as DVDs. Instead, administrators rely on PXE (Preboot eXecution Environment) booting to image servers.</q></cite></span>
</li>
<li id="cite_note-wfmspec-2"><span class="mw-cite-backlink"><b><a href="#cite_ref-wfmspec_2-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20170222225329/http://download.intel.com/design/archives/wfm/downloads/base20.pdf">"Wired for Management Baseline - Version 2.0 Release"</a> <span class="cs1-format">(PDF)</span>. Intel Corporation. 1998-12-18. Archived from <a rel="nofollow" class="external text" href="http://download.intel.com/design/archives/wfm/downloads/base20.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2017-02-22<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-02-08</span></span>.</cite></span>
</li>
<li id="cite_note-pxespec-3"><span class="mw-cite-backlink">^ <a href="#cite_ref-pxespec_3-0"><sup><i><b>a</b></i></sup></a> <a href="#cite_ref-pxespec_3-1"><sup><i><b>b</b></i></sup></a></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20131102003141/http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf">"Preboot Execution Environment (PXE) Specification - Version 2.1"</a> <span class="cs1-format">(PDF)</span>. Intel Corporation. 1999-09-20. Archived from <a rel="nofollow" class="external text" href="http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2013-11-02<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-02-08</span></span>.</cite></span>
</li>
<li id="cite_note-2_4_Errata_A-4"><span class="mw-cite-backlink"><b><a href="#cite_ref-2_4_Errata_A_4-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://www.uefi.org/sites/default/files/resources/2_4_Errata_A.pdf">"Unified Extensible Firmware Interface Specification"</a> <span class="cs1-format">(PDF)</span>. UEFI. 2013-12-02<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-04-04</span></span>.</cite></span>
</li>
<li id="cite_note-Intel_UEFI_PXE_Boot_Performance_Analysis-5"><span class="mw-cite-backlink"><b><a href="#cite_ref-Intel_UEFI_PXE_Boot_Performance_Analysis_5-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140808044632/https://uefidk.com/sites/default/files/Intel_UEFI_PXE_Boot_Performance_Analysis.pdf">"UEFI PXE Boot Performance Analysis"</a> <span class="cs1-format">(PDF)</span>. Intel Corporation. 2014-02-02. Archived from <a rel="nofollow" class="external text" href="https://uefidk.com/sites/default/files/Intel_UEFI_PXE_Boot_Performance_Analysis.pdf">the original</a> <span class="cs1-format">(PDF)</span> on 2014-08-08<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-04-04</span></span>.</cite></span>
</li>
<li id="cite_note-rfc4578-6"><span class="mw-cite-backlink"><b><a href="#cite_ref-rfc4578_6-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFM._Johnston2006" class="citation cs1">M. Johnston (June 2006). S. Venaas (ed.). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc4578"><i>Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE)</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC4578">10.17487/RFC4578</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc4578">4578</a>.</cite> <i>Informational.</i>
</span>
</li>
<li id="cite_note-rfc5970-7"><span class="mw-cite-backlink"><b><a href="#cite_ref-rfc5970_7-0">^</a></b></span> <span class="reference-text"><cite id="CITEREFT._HuthJ._FreimannV._ZimmerD._Thaler2010" class="citation cs1">T. Huth; J. Freimann; V. Zimmer; D. Thaler (September 2010). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc5970"><i>DHCPv6 Options for Network Boot</i></a>. <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">Internet Engineering Task Force</a>. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC5970">10.17487/RFC5970</a></span>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/2070-1721">2070-1721</a>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc5970">5970</a>.</cite> <i>Proposed Standard.</i>
</span>
</li>
<li id="cite_note-gPXE-8"><span class="mw-cite-backlink"><b><a href="#cite_ref-gPXE_8-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://etherboot.org/wiki/">"Etherboot/gPXE Wiki"</a>. Etherboo.org.</cite></span>
</li>
<li id="cite_note-BSDP_1-9"><span class="mw-cite-backlink"><b><a href="#cite_ref-BSDP_1_9-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="http://opensource.apple.com/source/bootp/bootp-170/Documentation/BSDP.doc">"NetBoot 2.0: Boot Server Discovery Protocol (BSDP) v0.1"</a> <span class="cs1-format">(Doc)</span>. Apple Corporation. 2003-12-02<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-04-04</span></span>.</cite></span>
</li>
<li id="cite_note-BSDP_2-10"><span class="mw-cite-backlink"><b><a href="#cite_ref-BSDP_2_10-0">^</a></b></span> <span class="reference-text"><cite class="citation web cs1"><a rel="nofollow" class="external text" href="https://opensource.apple.com/source/bootp/bootp-254.1/Documentation/BSDP.doc">"NetBoot 2.0: Boot Server Discovery Protocol (BSDP) v1.08"</a> <span class="cs1-format">(Doc)</span>. Apple Corporation. 2010-09-17<span class="reference-accessdate">. Retrieved <span class="nowrap">2014-04-04</span></span>.</cite></span>
</li>
</ol></div>
<div class="mw-heading mw-heading2"><h2 id="Further_reading">Further reading</h2></div>
<ul><li><cite id="CITEREFK._R._Sollins1981" class="citation cs1">K. R. Sollins (June 1981). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc783"><i>THE TFTP PROTOCOL (REVISION 2)</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC0783">10.17487/RFC0783</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc783">783</a>.</cite> <i>Status Unknown.</i> Obsoleted by RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1350">1350</a>.</li>
<li><cite id="CITEREFR._Finlayson1984" class="citation cs1">R. Finlayson (June 1984). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc906"><i>Bootstrap Loading using TFTP</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC0906">10.17487/RFC0906</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc906">906</a>.</cite> <i>Status Unknown.</i></li>
<li><cite id="CITEREFBill_CroftJohn_Gilmore1985" class="citation cs1">Bill Croft; John Gilmore (September 1985). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc951"><i>BOOTSTRAP PROTOCOL (BOOTP)</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC0951">10.17487/RFC0951</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc951">951</a>.</cite> <i>Draft Standard.</i> Updated by RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1395">1395</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1497">1497</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1532">1532</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1542">1542</a> and <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc5494">5494</a>.</li>
<li><cite id="CITEREFK._Sollins1992" class="citation cs1">K. Sollins (July 1992). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc1350"><i>THE TFTP PROTOCOL (REVISION 2)</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC1350">10.17487/RFC1350</a></span>. STD 33. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc1350">1350</a>.</cite> <i>Internet Standard 33.</i> Obsoletes RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc783">783</a>. Updated by RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1782">1782</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1783">1783</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1784">1784</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1785">1785</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc2347">2347</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc2348">2348</a> and <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc2349">2349</a>.</li>
<li><cite id="CITEREFR._Droms1997" class="citation cs1">R. Droms (March 1997). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc2131"><i>Dynamic Host Configuration Protocol</i></a>. <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">IETF</a> Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC2131">10.17487/RFC2131</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc2131">2131</a>.</cite> <i>Draft Standard.</i> Obsoletes RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1541">1541</a>. Updated by RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc3396">3396</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc4361">4361</a>, <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc5494">5494</a> and <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc6842">6842</a>.</li>
<li><cite id="CITEREFG._MalkinA._Harkin1998" class="citation cs1">G. Malkin; A. Harkin (May 1998). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc2348"><i>TFTP Blocksize Option</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC2348">10.17487/RFC2348</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc2348">2348</a>.</cite> <i>Draft Standard.</i> Updates RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1350">1350</a>. Obsoletes RFC <a rel="nofollow" class="external text" href="https://www.rfc-editor.org/rfc/rfc1783">1783</a>.</li>
<li><cite id="CITEREFM._Johnston2006" class="citation cs1">M. Johnston (June 2006). S. Venaas (ed.). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc4578"><i>Dynamic Host Configuration Protocol (DHCP) Options for the Intel Preboot eXecution Environment (PXE)</i></a>. Network Working Group. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC4578">10.17487/RFC4578</a></span>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc4578">4578</a>.</cite> <i>Informational.</i></li>
<li><cite id="CITEREFT._HuthJ._FreimannV._ZimmerD._Thaler2010" class="citation cs1">T. Huth; J. Freimann; V. Zimmer; D. Thaler (September 2010). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc5970"><i>DHCPv6 Options for Network Boot</i></a>. <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">Internet Engineering Task Force</a>. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC5970">10.17487/RFC5970</a></span>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/2070-1721">2070-1721</a>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc5970">5970</a>.</cite> <i>Proposed Standard.</i></li>
<li><cite id="CITEREFP._Masotta2015" class="citation cs1">P. Masotta (January 2015). <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc7440"><i>TFTP Windowsize Option</i></a>. <a href="Internet_Engineering_Task_Force" title="Internet Engineering Task Force">Internet Engineering Task Force</a>. <a href="Doi_(identifier)" class="mw-redirect" title="Doi (identifier)">doi</a>:<span class="id-lock-free" title="Freely accessible"><a rel="nofollow" class="external text" href="https://doi.org/10.17487%2FRFC7440">10.17487/RFC7440</a></span>. <a href="ISSN_(identifier)" class="mw-redirect" title="ISSN (identifier)">ISSN</a> <a rel="nofollow" class="external text" href="https://search.worldcat.org/issn/2070-1721">2070-1721</a>. <a href="Request_for_Comments" title="Request for Comments">RFC</a> <a rel="nofollow" class="external text" href="https://datatracker.ietf.org/doc/html/rfc7440">7440</a>.</cite> <i>Proposed Standard.</i></li></ul>
<div class="mw-heading mw-heading2"><h2 id="External_links">External links</h2></div>
<ul><li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20110524083740/http://download.intel.com/design/archives/wfm/downloads/pxespec.pdf">PXE specification</a> – The Preboot Execution Environment specification v2.1 published by Intel & SystemSoft</li>
<li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20091117070518/http://download.intel.com/design/archives/wfm/downloads/bisspec.pdf">BIS specification</a> – The Boot Integrity Services specification v1.0 published by Intel</li>
<li><a rel="nofollow" class="external text" href="http://tools.ietf.org/html/draft-henry-remote-boot-protocol-00">Intel Preboot Execution Environment</a> – Internet-Draft 00 of the PXE Client/Server Protocol included in the PXE specification</li>
<li><a rel="nofollow" class="external text" href="https://web.archive.org/web/20140221222847/http://h18013.www1.hp.com/products/servers/management/rdp/knowledgebase/00000138.html">PXE error codes</a> – A catalogue of PXE error codes</li></ul>
<div class="navbox-styles"><style data-mw-deduplicate="TemplateStyles:r1129693374">
/* start https://en.wikipedia.org/ */
.mw-parser-output .hlist dl,.mw-parser-output .hlist ol,.mw-parser-output .hlist ul{margin:0;padding:0}.mw-parser-output .hlist dd,.mw-parser-output .hlist dt,.mw-parser-output .hlist li{margin:0;display:inline}.mw-parser-output .hlist.inline,.mw-parser-output .hlist.inline dl,.mw-parser-output .hlist.inline ol,.mw-parser-output .hlist.inline ul,.mw-parser-output .hlist dl dl,.mw-parser-output .hlist dl ol,.mw-parser-output .hlist dl ul,.mw-parser-output .hlist ol dl,.mw-parser-output .hlist ol ol,.mw-parser-output .hlist ol ul,.mw-parser-output .hlist ul dl,.mw-parser-output .hlist ul ol,.mw-parser-output .hlist ul ul{display:inline}.mw-parser-output .hlist .mw-empty-li{display:none}.mw-parser-output .hlist dt::after{content:": "}.mw-parser-output .hlist dd::after,.mw-parser-output .hlist li::after{content:" · ";font-weight:bold}.mw-parser-output .hlist dd:last-child::after,.mw-parser-output .hlist dt:last-child::after,.mw-parser-output .hlist li:last-child::after{content:none}.mw-parser-output .hlist dd dd:first-child::before,.mw-parser-output .hlist dd dt:first-child::before,.mw-parser-output .hlist dd li:first-child::before,.mw-parser-output .hlist dt dd:first-child::before,.mw-parser-output .hlist dt dt:first-child::before,.mw-parser-output .hlist dt li:first-child::before,.mw-parser-output .hlist li dd:first-child::before,.mw-parser-output .hlist li dt:first-child::before,.mw-parser-output .hlist li li:first-child::before{content:" (";font-weight:normal}.mw-parser-output .hlist dd dd:last-child::after,.mw-parser-output .hlist dd dt:last-child::after,.mw-parser-output .hlist dd li:last-child::after,.mw-parser-output .hlist dt dd:last-child::after,.mw-parser-output .hlist dt dt:last-child::after,.mw-parser-output .hlist dt li:last-child::after,.mw-parser-output .hlist li dd:last-child::after,.mw-parser-output .hlist li dt:last-child::after,.mw-parser-output .hlist li li:last-child::after{content:")";font-weight:normal}.mw-parser-output .hlist ol{counter-reset:listitem}.mw-parser-output .hlist ol>li{counter-increment:listitem}.mw-parser-output .hlist ol>li::before{content:" "counter(listitem)"\a0 "}.mw-parser-output .hlist dd ol>li:first-child::before,.mw-parser-output .hlist dt ol>li:first-child::before,.mw-parser-output .hlist li ol>li:first-child::before{content:" ("counter(listitem)"\a0 "}
/* end https://en.wikipedia.org/ */
</style><style data-mw-deduplicate="TemplateStyles:r1236075235">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbox{box-sizing:border-box;border:1px solid #a2a9b1;width:100%;clear:both;font-size:88%;text-align:center;padding:1px;margin:1em auto 0}.mw-parser-output .navbox .navbox{margin-top:0}.mw-parser-output .navbox+.navbox,.mw-parser-output .navbox+.navbox-styles+.navbox{margin-top:-1px}.mw-parser-output .navbox-inner,.mw-parser-output .navbox-subgroup{width:100%}.mw-parser-output .navbox-group,.mw-parser-output .navbox-title,.mw-parser-output .navbox-abovebelow{padding:0.25em 1em;line-height:1.5em;text-align:center}.mw-parser-output .navbox-group{white-space:nowrap;text-align:right}.mw-parser-output .navbox,.mw-parser-output .navbox-subgroup{background-color:#fdfdfd}.mw-parser-output .navbox-list{line-height:1.5em;border-color:#fdfdfd}.mw-parser-output .navbox-list-with-group{text-align:left;border-left-width:2px;border-left-style:solid}.mw-parser-output tr+tr>.navbox-abovebelow,.mw-parser-output tr+tr>.navbox-group,.mw-parser-output tr+tr>.navbox-image,.mw-parser-output tr+tr>.navbox-list{border-top:2px solid #fdfdfd}.mw-parser-output .navbox-title{background-color:#ccf}.mw-parser-output .navbox-abovebelow,.mw-parser-output .navbox-group,.mw-parser-output .navbox-subgroup .navbox-title{background-color:#ddf}.mw-parser-output .navbox-subgroup .navbox-group,.mw-parser-output .navbox-subgroup .navbox-abovebelow{background-color:#e6e6ff}.mw-parser-output .navbox-even{background-color:#f7f7f7}.mw-parser-output .navbox-odd{background-color:transparent}.mw-parser-output .navbox .hlist td dl,.mw-parser-output .navbox .hlist td ol,.mw-parser-output .navbox .hlist td ul,.mw-parser-output .navbox td.hlist dl,.mw-parser-output .navbox td.hlist ol,.mw-parser-output .navbox td.hlist ul{padding:0.125em 0}.mw-parser-output .navbox .navbar{display:block;font-size:100%}.mw-parser-output .navbox-title .navbar{float:left;text-align:left;margin-right:0.5em}body.skin--responsive .mw-parser-output .navbox-image img{max-width:none!important}@media print{body.ns-0 .mw-parser-output .navbox{display:none!important}}
/* end https://en.wikipedia.org/ */
</style></div><div role="navigation" class="navbox" aria-labelledby="Firmware_and_booting244" style="padding:3px"><table class="nowraplinks hlist mw-collapsible autocollapse navbox-inner" style="border-spacing:0;background:transparent;color:inherit"><tbody><tr><th scope="col" class="navbox-title" colspan="3"><style data-mw-deduplicate="TemplateStyles:r1239400231">
/* start https://en.wikipedia.org/ */
.mw-parser-output .navbar{display:inline;font-size:88%;font-weight:normal}.mw-parser-output .navbar-collapse{float:left;text-align:left}.mw-parser-output .navbar-boxtext{word-spacing:0}.mw-parser-output .navbar ul{display:inline-block;white-space:nowrap;line-height:inherit}.mw-parser-output .navbar-brackets::before{margin-right:-0.125em;content:"[ "}.mw-parser-output .navbar-brackets::after{margin-left:-0.125em;content:" ]"}.mw-parser-output .navbar li{word-spacing:-0.125em}.mw-parser-output .navbar a>span,.mw-parser-output .navbar a>abbr{text-decoration:inherit}.mw-parser-output .navbar-mini abbr{font-variant:small-caps;border-bottom:none;text-decoration:none;cursor:inherit}.mw-parser-output .navbar-ct-full{font-size:114%;margin:0 7em}.mw-parser-output .navbar-ct-mini{font-size:114%;margin:0 4em}html.skin-theme-clientpref-night .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}@media(prefers-color-scheme:dark){html.skin-theme-clientpref-os .mw-parser-output .navbar li a abbr{color:var(--color-base)!important}}@media print{.mw-parser-output .navbar{display:none!important}}
/* end https://en.wikipedia.org/ */
</style><div id="Firmware_and_booting244" style="font-size:114%;margin:0 4em"><a href="Firmware" title="Firmware">Firmware</a> and <a href="Booting" title="Booting">booting</a></div></th></tr><tr><th scope="row" class="navbox-group" style="width:1%">Processes</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Booting_process_of_Windows" title="Booting process of Windows">Windows</a></span>
<ul><li><span class="nowrap"><a href="Architecture_of_Windows_9x#Boot_sequence" title="Architecture of Windows 9x">9x</a></span></li>
<li><span class="nowrap"><a href="Booting_process_of_Windows_NT" class="mw-redirect" title="Booting process of Windows NT">NT</a></span></li></ul></li>
<li><span class="nowrap"><a href="Booting_process_of_Linux" title="Booting process of Linux">Linux</a></span>
<ul><li><span class="nowrap"><a href="Booting_process_of_Android_devices" title="Booting process of Android devices">Android</a></span></li></ul></li></ul>
</div></td><td class="noviewer navbox-image" rowspan="10" style="width:1px;padding:0 0 0 2px"><div><span typeof="mw:File"></span></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Booting <a href="Firmware#Computers" title="Firmware">firmware</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Types</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Proprietary_firmware" title="Proprietary firmware">Proprietary firmware</a></span></li>
<li><span class="nowrap"><a href="Open-source_firmware" title="Open-source firmware">Open-source firmware</a></span></li>
<li><span class="nowrap"><a href="Custom_firmware" title="Custom firmware">Custom firmware</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Interfaces</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="UEFI" title="UEFI">UEFI</a></span></li>
<li><span class="nowrap"><a href="BIOS" title="BIOS">BIOS</a></span>
<ul><li><span class="nowrap"><a href="Video_BIOS" title="Video BIOS">Video BIOS</a></span></li></ul></li>
<li><span class="nowrap"><a href="Open_Firmware" title="Open Firmware">Open Firmware</a></span></li>
<li><span class="nowrap"><a href="ACPI" title="ACPI">ACPI</a></span></li>
<li><span class="nowrap"><a href="MultiProcessor_Specification" title="MultiProcessor Specification">MultiProcessor Specification</a></span></li>
<li><span class="nowrap"><a href="Advanced_Power_Management" title="Advanced Power Management">APM</a></span></li>
<li><span class="nowrap"><a href="Legacy_Plug_and_Play" title="Legacy Plug and Play">Legacy Plug and Play</a></span></li>
<li><span class="nowrap"><a href="ARC_(specification)" title="ARC (specification)">AlphaBIOS</a></span></li>
<li><span class="nowrap"><a href="SRM_firmware" title="SRM firmware">SRM</a></span></li>
<li><span class="nowrap"><a href="Simple_Firmware_Interface" title="Simple Firmware Interface">SFI</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Implementations</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="SeaBIOS" title="SeaBIOS">SeaBIOS</a></span></li>
<li><span class="nowrap"><a href="Award_Software" title="Award Software">Award BIOS</a></span></li>
<li><span class="nowrap"><a href="American_Megatrends" title="American Megatrends">American Megatrends</a></span>
<ul><li><span class="nowrap"><a href="AMIBIOS" class="mw-redirect" title="AMIBIOS">AMIBIOS</a></span></li>
<li><span class="nowrap"><a href="AMI_Aptio" class="mw-redirect" title="AMI Aptio">AMI Aptio</a></span></li></ul></li>
<li><span class="nowrap"><a href="Insyde_Software" title="Insyde Software">InsydeH2O</a></span></li>
<li><span class="nowrap"><a href="Phoenix_Technologies" title="Phoenix Technologies">Phoenix SecureCore UEFI</a></span></li>
<li><span class="nowrap"><a href="TianoCore_EDK_II" title="TianoCore EDK II">TianoCore EDK II</a></span></li>
<li><span class="nowrap"><a href="OpenBIOS" title="OpenBIOS">OpenBIOS</a></span></li>
<li><span class="nowrap"><a href="Coreboot" title="Coreboot">Coreboot</a></span></li>
<li><span class="nowrap"><a href="Libreboot" title="Libreboot">Libreboot</a></span></li>
<li><span class="nowrap"><a href="LinuxBoot" title="LinuxBoot">LinuxBoot</a></span></li>
<li><span class="nowrap"><a href="Kickstart_(Amiga)" title="Kickstart (Amiga)">Kickstart</a></span></li>
<li><span class="nowrap"><a href="Run-Time_Abstraction_Services" title="Run-Time Abstraction Services">Run-Time Abstraction Services</a></span></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Hybrid firmware bootloader</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Common_Firmware_Environment" title="Common Firmware Environment">Common Firmware Environment</a> </span></li>
<li><span class="nowrap"><a href="Das_U-Boot" title="Das U-Boot">Das U-Boot</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Bootloader" title="Bootloader">Bootloaders</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Bootloader_unlocking" title="Bootloader unlocking">Bootloader unlocking</a></span></li>
<li><span class="nowrap"><a href="Comparison_of_bootloaders" title="Comparison of bootloaders">Comparison of bootloaders</a></span></li></ul>
</div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th id="Implementations15" scope="row" class="navbox-group" style="width:1%">Implementations</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Acronis_OS_Selector" class="mw-redirect" title="Acronis OS Selector">Acronis OS Selector</a></span></li>
<li><span class="nowrap"><a href="Barebox" title="Barebox">Barebox</a></span></li>
<li><span class="nowrap"><a href="BootManager" class="mw-redirect" title="BootManager">BootManager</a></span></li>
<li><span class="nowrap"><a href="BootX_(Apple)" title="BootX (Apple)">BootX (Apple)</a></span></li>
<li><span class="nowrap"><a href="BootX_(Linux)" title="BootX (Linux)">BootX (Linux)</a></span></li>
<li><span class="nowrap"><a href="GNU_GRUB" title="GNU GRUB">GNU GRUB</a></span></li>
<li><span class="nowrap"><a href="IBoot" title="IBoot">iBoot</a></span></li>
<li><span class="nowrap"><a href="Systemd-boot" title="Systemd-boot">systemd-boot</a></span></li>
<li><span class="nowrap"><a href="Limine_(bootloader)" title="Limine (bootloader)">Limine</a></span></li>
<li><span class="nowrap"><a href="Loadlin" title="Loadlin">loadlin</a></span></li>
<li><span class="nowrap"><a href="MILO_(bootloader)" title="MILO (bootloader)">MILO</a></span></li>
<li><span class="nowrap"><a href="NTLDR" title="NTLDR">NTLDR</a></span></li>
<li><span class="nowrap"><a href="OpeniBoot" title="OpeniBoot">OpeniBoot</a></span></li>
<li><span class="nowrap"><a href="Plop_Boot_Manager" title="Plop Boot Manager">Plop Boot Manager</a></span></li>
<li><span class="nowrap"><a href="RedBoot" title="RedBoot">RedBoot</a></span></li>
<li><span class="nowrap"><a href="REFInd" title="REFInd">rEFInd</a></span></li>
<li><span class="nowrap"><a href="REFIt" title="REFIt">rEFIt</a></span></li>
<li><span class="nowrap"><a href="SYSLINUX" title="SYSLINUX">SYSLINUX</a></span></li>
<li><span class="nowrap"><a href="Windows_Boot_Manager" title="Windows Boot Manager">Windows Boot Manager</a></span></li>
<li><span class="nowrap"><a href="XOSL" title="XOSL">xOSL</a></span></li>
<li><span class="nowrap"><a href="Yaboot" title="Yaboot">Yaboot</a></span></li></ul>
</div></td></tr></tbody></table><div>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Partition layouts</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="GUID_Partition_Table" title="GUID Partition Table">GUID Partition Table</a></span></li>
<li><span class="nowrap"><a href="Master_boot_record" title="Master boot record">Master boot record</a></span></li>
<li><span class="nowrap"><a href="Apple_Partition_Map" title="Apple Partition Map">Apple Partition Map</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="System_partition_and_boot_partition" title="System partition and boot partition">Partitions</a></th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="EFI_system_partition" title="EFI system partition">EFI system partition</a></span></li>
<li><span class="nowrap"><a href="BIOS_boot_partition" title="BIOS boot partition">BIOS boot partition</a></span></li>
<li><span class="nowrap"><a href=".//boot/" class="mw-redirect" title="/boot/">/boot/</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Utilities</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em"></div><table class="nowraplinks navbox-subgroup" style="border-spacing:0"><tbody><tr><th scope="row" class="navbox-group" style="width:1%">Software</th><td class="navbox-list-with-group navbox-list navbox-even" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Flashrom_(utility)" title="Flashrom (utility)">flashrom</a></span></li>
<li><span class="nowrap"><a href="Fwupd" title="Fwupd">fwupd</a></span></li>
<li><span class="nowrap"><a href="UEFITool" title="UEFITool">UEFITool</a></span></li>
<li><span class="nowrap"><a href="Odin_(firmware_flashing_software)" title="Odin (firmware flashing software)">Odin</a></span>
<ul><li><span class="nowrap"><a href="Odin_(firmware_flashing_software)#Heimdall" title="Odin (firmware flashing software)">Heimdall</a></span></li></ul></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Hardware</th><td class="navbox-list-with-group navbox-list navbox-odd" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Bus_Pirate" title="Bus Pirate">Bus Pirate</a></span></li>
<li><span class="nowrap"><a href="Raspberry_Pi" title="Raspberry Pi">Raspberry Pi</a></span></li>
<li><span class="nowrap"><a href="FTDI" title="FTDI">ft2232</a></span></li></ul>
</div></td></tr></tbody></table><div></div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%"><a href="Network_booting" title="Network booting">Network boot</a></th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li>
<ul><li><span class="nowrap"><a href="GPXE" title="GPXE">gPXE</a></span></li>
<li><span class="nowrap"><a href="IPXE" title="IPXE">iPXE</a></span></li></ul></li>
<li><span class="nowrap"><a href="NetBoot" title="NetBoot">NetBoot</a></span></li>
<li><span class="nowrap"><a href="Remote_Initial_Program_Load" title="Remote Initial Program Load">Remote Initial Program Load</a></span></li>
<li><span class="nowrap"><a href="Wake-on-LAN" title="Wake-on-LAN">Wake-on-LAN</a></span></li>
<li><span class="nowrap"><a href="Wake-on-ring" title="Wake-on-ring">Wake-on-ring</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">ROM variants</th><td class="navbox-list-with-group navbox-list navbox-odd hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Read-only_memory" title="Read-only memory">ROM</a></span></li>
<li><span class="nowrap"><a href="Programmable_ROM" title="Programmable ROM">PROM</a></span></li>
<li><span class="nowrap"><a href="EPROM" title="EPROM">EPROM</a></span></li>
<li><span class="nowrap"><a href="EEPROM" title="EEPROM">EEPROM</a></span></li></ul>
</div></td></tr><tr><th scope="row" class="navbox-group" style="width:1%">Related</th><td class="navbox-list-with-group navbox-list navbox-even hlist" style="width:100%;padding:0"><div style="padding:0 0.25em">
<ul><li><span class="nowrap"><a href="Boot_ROM" title="Boot ROM">Boot ROM</a></span></li>
<li><span class="nowrap"><a href="ROM_hacking" title="ROM hacking">ROM hacking</a></span></li>
<li><span class="nowrap"><a href="ROM_image" title="ROM image">ROM image</a></span></li>
<li><span class="nowrap"><a href="Execute_in_place" title="Execute in place">Execute in place</a></span></li>
<li><span class="nowrap"><a href="Devicetree" title="Devicetree">Devicetree</a></span></li>
<li><span class="nowrap"><a href="Fastboot" title="Fastboot">Fastboot</a></span></li>
<li><span class="nowrap"><a href="Instant-on" title="Instant-on">Instant-on</a></span></li>
<li><span class="nowrap"><a href="Power-on_self-test" title="Power-on self-test">Power-on self-test</a></span></li>
<li><span class="nowrap"><a href="Qualcomm_EDL_mode" title="Qualcomm EDL mode">EDL mode</a></span></li></ul>
</div></td></tr></tbody></table></div></div><!--htdig_noindex--><div><div class="zim-footer">
This article is issued from <a class="external text" title="Last edited on 2025-04-08" href="https://en.wikipedia.org/wiki/?title=Preboot_Execution_Environment&oldid=1284570021">Wikipedia</a>. The text is available under <a class="external text" href="https://creativecommons.org/licenses/by-sa/4.0/deed.en">Creative Commons Attribution-Share Alike 4.0</a> unless otherwise noted. Additional terms may apply for the media files.
</div>
</div><!--/htdig_noindex--></div>
</div>
</main>
</div>
</div>
</div>
</body></html>